class Solution {
    public boolean backspaceCompare(String s, String t) {
        StringBuilder ss = new StringBuilder();
        StringBuilder tt = new StringBuilder();
        // for (int i = 0; i < s.length(); i++) {
        //     // 遇到 '#' 且 StringBuilder 对象不为空，就出栈
        //     if (s.charAt(i) == '#') {
        //         if (ss.length() != 0) {
        //             ss.deleteCharAt(ss.length()-1);
        //         }
        //     } else {
        //         ss.append(s.charAt(i));
        //     }
        // }

        // for (int i = 0; i < t.length(); i++) {
        //     // 遇到 '#' 且 StringBuilder 对象不为空，就出栈
        //     if (t.charAt(i) == '#') {
        //         if (tt.length() != 0) {
        //             tt.deleteCharAt(tt.length()-1);
        //         }
        //     } else {
        //         tt.append(t.charAt(i));
        //     }
        // }


        for (int i = 0, j = 0; i < s.length() || j < t.length(); i++, j++) {
            if (i < s.length()) {
                // 遇到 '#' 且 StringBuilder 对象不为空，就出栈
                if (s.charAt(i) == '#') {
                    if (ss.length() != 0) {
                        ss.deleteCharAt(ss.length()-1);
                    }
                } else {
                    ss.append(s.charAt(i));
                }
            }
            
            if (j < t.length()) {
                // 遇到 '#' 且 StringBuilder 对象不为空，就出栈
                if (t.charAt(j) == '#') {
                    if (tt.length() != 0) {
                        tt.deleteCharAt(tt.length()-1);
                    }
                } else {
                    tt.append(t.charAt(j));
                }
            }
        }
        return ss.toString().equals(tt.toString());
    }
}